package com.zack.xjht.db.gen;

import java.util.Map;

import org.greenrobot.greendao.AbstractDao;
import org.greenrobot.greendao.AbstractDaoSession;
import org.greenrobot.greendao.database.Database;
import org.greenrobot.greendao.identityscope.IdentityScopeType;
import org.greenrobot.greendao.internal.DaoConfig;

import com.zack.xjht.entity.AlarmLogBean;
import com.zack.xjht.entity.CommonLogBean;
import com.zack.xjht.entity.GunStateBean;
import com.zack.xjht.entity.OfflineTask;
import com.zack.xjht.entity.OfflineTaskItem;
import com.zack.xjht.entity.OperLogBean;
import com.zack.xjht.entity.SubCabBean;
import com.zack.xjht.entity.UrgentBackListBean;
import com.zack.xjht.entity.UrgentGetListBean;
import com.zack.xjht.entity.UrgentOutBean;
import com.zack.xjht.entity.UserBean;
import com.zack.xjht.entity.UserBiosBean;
import com.zack.xjht.entity.CabInfoBean;

import com.zack.xjht.db.gen.AlarmLogBeanDao;
import com.zack.xjht.db.gen.CommonLogBeanDao;
import com.zack.xjht.db.gen.GunStateBeanDao;
import com.zack.xjht.db.gen.OfflineTaskDao;
import com.zack.xjht.db.gen.OfflineTaskItemDao;
import com.zack.xjht.db.gen.OperLogBeanDao;
import com.zack.xjht.db.gen.SubCabBeanDao;
import com.zack.xjht.db.gen.UrgentBackListBeanDao;
import com.zack.xjht.db.gen.UrgentGetListBeanDao;
import com.zack.xjht.db.gen.UrgentOutBeanDao;
import com.zack.xjht.db.gen.UserBeanDao;
import com.zack.xjht.db.gen.UserBiosBeanDao;
import com.zack.xjht.db.gen.CabInfoBeanDao;

// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.

/**
 * {@inheritDoc}
 * 
 * @see org.greenrobot.greendao.AbstractDaoSession
 */
public class DaoSession extends AbstractDaoSession {

    private final DaoConfig alarmLogBeanDaoConfig;
    private final DaoConfig commonLogBeanDaoConfig;
    private final DaoConfig gunStateBeanDaoConfig;
    private final DaoConfig offlineTaskDaoConfig;
    private final DaoConfig offlineTaskItemDaoConfig;
    private final DaoConfig operLogBeanDaoConfig;
    private final DaoConfig subCabBeanDaoConfig;
    private final DaoConfig urgentBackListBeanDaoConfig;
    private final DaoConfig urgentGetListBeanDaoConfig;
    private final DaoConfig urgentOutBeanDaoConfig;
    private final DaoConfig userBeanDaoConfig;
    private final DaoConfig userBiosBeanDaoConfig;
    private final DaoConfig cabInfoBeanDaoConfig;

    private final AlarmLogBeanDao alarmLogBeanDao;
    private final CommonLogBeanDao commonLogBeanDao;
    private final GunStateBeanDao gunStateBeanDao;
    private final OfflineTaskDao offlineTaskDao;
    private final OfflineTaskItemDao offlineTaskItemDao;
    private final OperLogBeanDao operLogBeanDao;
    private final SubCabBeanDao subCabBeanDao;
    private final UrgentBackListBeanDao urgentBackListBeanDao;
    private final UrgentGetListBeanDao urgentGetListBeanDao;
    private final UrgentOutBeanDao urgentOutBeanDao;
    private final UserBeanDao userBeanDao;
    private final UserBiosBeanDao userBiosBeanDao;
    private final CabInfoBeanDao cabInfoBeanDao;

    public DaoSession(Database db, IdentityScopeType type, Map<Class<? extends AbstractDao<?, ?>>, DaoConfig>
            daoConfigMap) {
        super(db);

        alarmLogBeanDaoConfig = daoConfigMap.get(AlarmLogBeanDao.class).clone();
        alarmLogBeanDaoConfig.initIdentityScope(type);

        commonLogBeanDaoConfig = daoConfigMap.get(CommonLogBeanDao.class).clone();
        commonLogBeanDaoConfig.initIdentityScope(type);

        gunStateBeanDaoConfig = daoConfigMap.get(GunStateBeanDao.class).clone();
        gunStateBeanDaoConfig.initIdentityScope(type);

        offlineTaskDaoConfig = daoConfigMap.get(OfflineTaskDao.class).clone();
        offlineTaskDaoConfig.initIdentityScope(type);

        offlineTaskItemDaoConfig = daoConfigMap.get(OfflineTaskItemDao.class).clone();
        offlineTaskItemDaoConfig.initIdentityScope(type);

        operLogBeanDaoConfig = daoConfigMap.get(OperLogBeanDao.class).clone();
        operLogBeanDaoConfig.initIdentityScope(type);

        subCabBeanDaoConfig = daoConfigMap.get(SubCabBeanDao.class).clone();
        subCabBeanDaoConfig.initIdentityScope(type);

        urgentBackListBeanDaoConfig = daoConfigMap.get(UrgentBackListBeanDao.class).clone();
        urgentBackListBeanDaoConfig.initIdentityScope(type);

        urgentGetListBeanDaoConfig = daoConfigMap.get(UrgentGetListBeanDao.class).clone();
        urgentGetListBeanDaoConfig.initIdentityScope(type);

        urgentOutBeanDaoConfig = daoConfigMap.get(UrgentOutBeanDao.class).clone();
        urgentOutBeanDaoConfig.initIdentityScope(type);

        userBeanDaoConfig = daoConfigMap.get(UserBeanDao.class).clone();
        userBeanDaoConfig.initIdentityScope(type);

        userBiosBeanDaoConfig = daoConfigMap.get(UserBiosBeanDao.class).clone();
        userBiosBeanDaoConfig.initIdentityScope(type);

        cabInfoBeanDaoConfig = daoConfigMap.get(CabInfoBeanDao.class).clone();
        cabInfoBeanDaoConfig.initIdentityScope(type);

        alarmLogBeanDao = new AlarmLogBeanDao(alarmLogBeanDaoConfig, this);
        commonLogBeanDao = new CommonLogBeanDao(commonLogBeanDaoConfig, this);
        gunStateBeanDao = new GunStateBeanDao(gunStateBeanDaoConfig, this);
        offlineTaskDao = new OfflineTaskDao(offlineTaskDaoConfig, this);
        offlineTaskItemDao = new OfflineTaskItemDao(offlineTaskItemDaoConfig, this);
        operLogBeanDao = new OperLogBeanDao(operLogBeanDaoConfig, this);
        subCabBeanDao = new SubCabBeanDao(subCabBeanDaoConfig, this);
        urgentBackListBeanDao = new UrgentBackListBeanDao(urgentBackListBeanDaoConfig, this);
        urgentGetListBeanDao = new UrgentGetListBeanDao(urgentGetListBeanDaoConfig, this);
        urgentOutBeanDao = new UrgentOutBeanDao(urgentOutBeanDaoConfig, this);
        userBeanDao = new UserBeanDao(userBeanDaoConfig, this);
        userBiosBeanDao = new UserBiosBeanDao(userBiosBeanDaoConfig, this);
        cabInfoBeanDao = new CabInfoBeanDao(cabInfoBeanDaoConfig, this);

        registerDao(AlarmLogBean.class, alarmLogBeanDao);
        registerDao(CommonLogBean.class, commonLogBeanDao);
        registerDao(GunStateBean.class, gunStateBeanDao);
        registerDao(OfflineTask.class, offlineTaskDao);
        registerDao(OfflineTaskItem.class, offlineTaskItemDao);
        registerDao(OperLogBean.class, operLogBeanDao);
        registerDao(SubCabBean.class, subCabBeanDao);
        registerDao(UrgentBackListBean.class, urgentBackListBeanDao);
        registerDao(UrgentGetListBean.class, urgentGetListBeanDao);
        registerDao(UrgentOutBean.class, urgentOutBeanDao);
        registerDao(UserBean.class, userBeanDao);
        registerDao(UserBiosBean.class, userBiosBeanDao);
        registerDao(CabInfoBean.class, cabInfoBeanDao);
    }
    
    public void clear() {
        alarmLogBeanDaoConfig.clearIdentityScope();
        commonLogBeanDaoConfig.clearIdentityScope();
        gunStateBeanDaoConfig.clearIdentityScope();
        offlineTaskDaoConfig.clearIdentityScope();
        offlineTaskItemDaoConfig.clearIdentityScope();
        operLogBeanDaoConfig.clearIdentityScope();
        subCabBeanDaoConfig.clearIdentityScope();
        urgentBackListBeanDaoConfig.clearIdentityScope();
        urgentGetListBeanDaoConfig.clearIdentityScope();
        urgentOutBeanDaoConfig.clearIdentityScope();
        userBeanDaoConfig.clearIdentityScope();
        userBiosBeanDaoConfig.clearIdentityScope();
        cabInfoBeanDaoConfig.clearIdentityScope();
    }

    public AlarmLogBeanDao getAlarmLogBeanDao() {
        return alarmLogBeanDao;
    }

    public CommonLogBeanDao getCommonLogBeanDao() {
        return commonLogBeanDao;
    }

    public GunStateBeanDao getGunStateBeanDao() {
        return gunStateBeanDao;
    }

    public OfflineTaskDao getOfflineTaskDao() {
        return offlineTaskDao;
    }

    public OfflineTaskItemDao getOfflineTaskItemDao() {
        return offlineTaskItemDao;
    }

    public OperLogBeanDao getOperLogBeanDao() {
        return operLogBeanDao;
    }

    public SubCabBeanDao getSubCabBeanDao() {
        return subCabBeanDao;
    }

    public UrgentBackListBeanDao getUrgentBackListBeanDao() {
        return urgentBackListBeanDao;
    }

    public UrgentGetListBeanDao getUrgentGetListBeanDao() {
        return urgentGetListBeanDao;
    }

    public UrgentOutBeanDao getUrgentOutBeanDao() {
        return urgentOutBeanDao;
    }

    public UserBeanDao getUserBeanDao() {
        return userBeanDao;
    }

    public UserBiosBeanDao getUserBiosBeanDao() {
        return userBiosBeanDao;
    }

    public CabInfoBeanDao getCabInfoBeanDao() {
        return cabInfoBeanDao;
    }

}
